#include <cstdio>
#include <iostream>
#include <algorithm>

using namespace std; 

#define N 20000
#define M 101

#define INF 10000

int l; 
int s,t,m; 

int a[M]; 
int f[N], v[N]; 


int main()
{
	int i, j, d, p; 
	
	//freopen("p1052.in", "r", stdin); 
	cin>>l; 
	cin>>s>>t>>m; 
	for (i=1; i<=m; i++) {
		cin>>a[i]; 
	}
	a[m+1] = l; 

	sort(a+1, a+m+2); 

	p = 0; 
	for (i=1; i<=m+1; i++) {
		d = a[i]-a[i-1]; 
		p += d<t ? d : (d%t) + t; 
		v[p] = 1; 
	}
	v[p] = 0; 

	for (i=0; i<=p+t+1; i++) {
		f[i] = INF; 
	} 

	f[0] = 0; 
	for (i=0; i<=p+t+1; i++) {
		for (j=s; j<=t; j++) {
			if (i-j<0)
				continue; 
			f[i] = min(f[i], f[i-j]+v[i]); 
		}
	}
	
	d = INF; 
    for(i=p;i<=p+t-1;i++) {
        d = min(f[i], d);  
	}	
	printf("%d\n", d); 
	return 0; 
}



